/*
 * NavDyDist.h
 *
 *  Created on: May 27, 2012
 *      Author: kobe
 */

#ifndef NAVDYDIST_H_
#define NAVDYDIST_H_

#include "Rule.h"
#include "NavCAction.h"
#include "AtomicAction.h"

class NavDyDist: public Rule {
public:
	NavDyDist(NavCAction*);
	virtual ~NavDyDist();
	std::vector<Sequent*> run(Sequent*);
	std::string toString();
	std::string toLatex();
private:
	Context* search(Context*);
	NavCAction* mActionTable;
	bool checkLoop(Context*, Context*);
};

#endif /* NAVDYDIST_H_ */
